// 给变量添加类型
//ts 可以编译成任何版本的js
// js动态类型的语言  ts静态类型的语言
// js 变量没有类型的限制
// let a
// a=10
// a='hi'
// ts 类型声明

// 1，声明一个变量a ，指定类型为number 小写
let a: number;
a = 10;

// 2,变量类型为字符串
let b: string;
b = "hi";

// 声明变量 直接赋值
// let c:boolean=false
//3 声明变量 直接赋值 效果和上面一样  ts 会自动对变量进行类型检查
let c = false;
// c='jjj' //不可以

// js 函数中不考虑参数的类型和个数
// js中 a ,b可以是任何参数类型
// function sum(a, b) {
//   return a + b;
// }
// console.log(sum(123, 456), sum(123, "456"));

// 4 ts 给 参数类型加限制  个数也不可多   函数返回值的类型也可限制
function sum(a: number, b: number): number {
  return a + b;
}
// sum(123, 456,'so')
let d = sum(2, 3);
console.log(d); 
